#include "light_adc.h"
//获取ADC的值
uint16_t Get_adc(uint16_t ch)
{
    HAL_ADC_Start(&hadc1);  //先开启ADC
    HAL_ADC_PollForConversion(&hadc1,1);//查询函数，查询EOC标志位。每次采样，CUP在这里都要
    //等待采样完成才能进行下一步，这段时间CUP没有干其他
    //事，所以降低了CUP使用率
    return HAL_ADC_GetValue(&hadc1);    //得到ADC的值
}

//获取times次采样值的平均值
uint16_t Get_ADC_Average(uint16_t ch,uint8_t times)
{
    uint32_t ADC_Sum=0;
    uint8_t i;
    for(i=0;i<times;i++)
    {
        ADC_Sum+=Get_adc(ch);
        HAL_Delay(5);
    }
    return ADC_Sum/times;                //对times次样品值取平均，使采样值更加准确
}
/* USER CODE END 1 */